package com.codebo.yunpicturebackend.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.codebo.yunpicturebackend.model.dto.picture.PictureQueryDTO;
import com.codebo.yunpicturebackend.model.dto.picture.PictureUploadDTO;
import com.codebo.yunpicturebackend.model.entity.Picture;
import com.codebo.yunpicturebackend.model.entity.User;
import com.codebo.yunpicturebackend.model.vo.PictureVO;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;

/**
 * @author 25912
 * @description 针对表【picture(图片)】的数据库操作Service
 * @createDate 2025-08-13 11:40:36
 */
public interface PictureService extends IService<Picture>
{

    PictureVO uploadPicture(MultipartFile multipartFile, PictureUploadDTO pictureUploadDTO, User loginUser);

    public QueryWrapper<Picture> getQueryWrapper(PictureQueryDTO pictureQueryDTO);


    public PictureVO getPictureVO(Picture picture, HttpServletRequest httpServletRequest);

    public Page<PictureVO> getPictureVOPage(Page<Picture> picturePage, HttpServletRequest request);

    boolean deletePicture(Long id);

    public void validPicture(Picture picture);
}
